<!DOCTYPE HTML>
<html>
  <head>
    <script>
        // Disable implicit root scroller since the outer div is full screen
        // and would otherwise be promoted to rootScroller. Doing so causes it
        // to be composited and produces off-by-one differences due to how
        // scrollbar positions are calculated in the compositor.
        internals.runtimeFlags.implicitRootScrollerEnabled = false;
    </script>
    <style>
      body {
        margin: 0px;
        overflow:hidden;
      }

      #outer-scrollable {
        position: absolute;
        top: 0px;
        left: 0px;
        right: 0px;
        bottom: 0px;
        overflow: scroll;
      }

      #tall {
        height: 1000px;
      }

      #inner-scrollable {
        position: relative;
        overflow: auto;
        width: 200px;
        height: 200px;
        z-index: 0;
      }

      #content {
        width: 300px;
        height: 300px;
        background-color: blue;
        margin: 0px;
        will-change:transform;
      }
    </style>
    <script>
      function doTest() {
        // This test succeeds if the scrollbars on the inner-scrollable
        // are positioned properly.
        var scroller = document.getElementById("outer-scrollable");
        scroller.scrollTop = 100;
      }
      window.addEventListener("load", doTest, false);
    </script>
  </head>
  <body>
    <div id="outer-scrollable">
      <div id="tall">
        <div id="inner-scrollable">
          <div id="content"></div>
        </div>
      </div>
    </div>
  </body>
</html>
